#include <iostream>
using namespace std;

#define MaxSize 10
/// @brief 共享栈（两个栈共享一片空间）
typedef struct
{
    int data[MaxSize];
    int top0;
    int top1;
} ShStack;

/// @brief 初始化共享栈
/// @param S
void InitStack(ShStack &S)
{
    S.top0 = 1; // 初始化栈顶指针
    S.top1 = MaxSize;
}

// 栈满的判断条件：top0+1 = top1;